package com.ads.proplan.activity;

import android.app.Activity;
import android.widget.ImageView;
import android.widget.TextView;

import com.ads.proplan.R;
import com.ads.proplan.control.CharacterControl;
import com.ads.proplan.db.entity.Fase;
import com.googlecode.androidannotations.annotations.Click;
import com.googlecode.androidannotations.annotations.EActivity;
import com.googlecode.androidannotations.annotations.ViewById;

@EActivity(R.layout.activity_character)
public class CharacterActivity extends Activity {

	@ViewById(R.id.character_image_personagem)
	ImageView personagemImageView;
	
	@ViewById(R.id.character_text_titulo)
	TextView tituloTextView;

	private CharacterControl control;
	
	@Override
	protected void onStart() {
		super.onStart();
		control = CharacterControl.getInstance();
		control.initialControl(this);
	}
	
	@Override
	protected void onResume() {
		super.onResume();
		switchCharacterActivity();
	}
	
	@Click(R.id.character_button_proximo)
	public void onClickButtonProximo() {
		switchNextActivity();
		control.finalizeControl();
		finish();
	}

	private void switchNextActivity() {
		switch (control.getJogadorFase()) {
			case 1:
				switch (control.getEstadoFase(1)) {
					case 1:
						control.setEstadoFase(1, Fase.PERSONAGEMNELTRO);
						CharacterActivity_.intent(this).start();
					break;
					default:	
						control.setEstadoFase(1, Fase.ATENDENTEINICIAL);
						QuestionActivity_.intent(this).start();
					break;
				}break;
			case 2:
				switch (control.getEstadoFase(2)) {
					case 1:
						control.setEstadoFase(1, Fase.PERSONAGEMNELTRO);
						CharacterActivity_.intent(this).start();
					break;
					default:	
						control.setEstadoFase(2, Fase.ATENDENTEFINAL);
						QuestionActivity_.intent(this).start();
					break;
			}break;
			case 3:
				switch (control.getEstadoFase(3)) {
					case 2:
						control.setEstadoFase(3, Fase.PERSONAGEMNELTRO);
						CharacterActivity_.intent(this).start();
					break;
					default:	
						control.setEstadoFase(3, Fase.ATENDENTEFINAL);
						QuestionActivity_.intent(this).start();
					break;
			}break;
		}
	}
	
	private void switchCharacterActivity() {
		switch (control.getJogadorFase()) {
			case 1:
				switch (control.getEstadoFase(1)) {
					case 1:tituloTextView.setText("Atendente Inicial");break;
					case 2:tituloTextView.setText("Atendente Final");break;
					case 3:tituloTextView.setText("Chefe dos Estagiarios Apresenta");break;
					case 4:tituloTextView.setText("Chefe dos Estagiarios Feliz");break;
					case 5:tituloTextView.setText("Chefe dos Estagiarios Triste");break;
				}break;
			case 2:
				switch (control.getEstadoFase(2)) {
					case 1:tituloTextView.setText("Atendente Inicial");break;
					case 2:tituloTextView.setText("Atendente Final");break;
					case 3:tituloTextView.setText("Chefe de Pesquisa Apresenta");break;
					case 4:tituloTextView.setText("Chefe de Pesquisa Feliz");break;
					case 5:tituloTextView.setText("Chefe de Pesquisa Triste");break;
				}break;
			case 3:
				switch (control.getEstadoFase(3)) {
					case 1:tituloTextView.setText("Atendente Inicial");break;
					case 2:tituloTextView.setText("Atendente Final");break;
					case 3:tituloTextView.setText("Chefe da Clinica Apresenta");break;
					case 4:tituloTextView.setText("Chefe da Clinica Feliz");break;
					case 5:tituloTextView.setText("Chefe da Clinica Triste");break;
			}break;
		}
	}
}
